<body>
Ant tasks.
<h2>How to register</h2>
To use Scriptella tasks in a build file, the following taskdef declaration should be added:
<pre><code>
    &lt;taskdef resource="antscriptella.properties" classpath="scriptella.jar"/&gt;
</code></pre>
<em>Note:</em> Additional libraries required for ETL execution may also be appended to classpath:
<pre><code>
    &lt;taskdef resource="antscriptella.properties" classpath="scriptella.jar;hsqldb.jar"/&gt;
</code></pre>

<h2>EtlExecuteTask (etl)</h2>

<h3>Parameters</h3>
<table>

    <tr>
        <th>Attribute</th><th>Description</th><th>Required</th>
    </tr>
    <tr>
        <td>file</td><td>The script file to execute.<p>
        The .etl.xml file extension part may be ommited.
        </p></td><td>Yes, unless a nested &lt;fileset&gt; element is used.</td>
    </tr>
    <tr>
        <td>inheritAll</td><td>If true, pass all properties to ETL executor. Defaults to <code>true</code>.</td><td>No</td>
    </tr>
    <tr>
        <td>debug</td><td>If true print debugging information.</td><td>No, default value is false.</td>
    </tr>
    <tr>
        <td>nostat</td><td>If true turns off statistics collecting.</td><td>No, default value is false.</td>
    </tr>
    <tr>
        <td>quiet</td><td>If true be extra quiet.</td><td>No, default value is false.</td>
    </tr>
    <tr><td colspan="3"><em>The following attributes are not supported yet</em></td></tr>
    <tr>
        <td>fork</td><td>if enabled triggers the class execution in another VM (disabled by default)</td><td>No</td>
    </tr>
    <tr>
        <td>maxmemory</td><td>Max amount of memory to allocate to the forked VM (ignored if fork is disabled)</td><td>
        No</td>
    </tr>


</table>
<p>

<h3>Nested Elements</h3>
The task supports nested <a href="http://ant.apache.org/manual/CoreTypes/fileset.html">&lt;fileset&gt;</a> element.
<p>

<h3>Examples</h3>
<b>Executes etl.xml file in the current directory:</b>
<pre><code>&lt;etl/&gt;</code></pre>
<b>Executes name.etl.xml file in the current directory:</b>
<pre><code>&lt;etl file="name" /&gt;
&lt;!--Or explicitly specifying the full name--&gt;
&lt;etl file="name.etl.xml" /&gt;
</code></pre>
<b>Executes all .etl.xml files in db directory:</b>
<pre><code>&lt;etl&gt;
    &lt;fileset dir="db" includes="*.etl.xml" /&gt;
&lt;/etl&gt;
</code></pre>


<h2>EtlTemplateTask (etl-template)</h2>

<h3>Parameters</h3>
<table>

    <tr>
        <th>Attribute</th><th>Description</th><th>Required</th>
    </tr>
    <tr>
        <td>name</td><td>ETL template name.</td><td>No, default ETL template is generated.</td>
    </tr>
    <tr>
        <td>inheritAll</td><td>If true, pass all properties to Scriptella. Defaults to <code>true</code>.</td><td>No</td>
    </tr>
    <tr>
        <td>debug</td><td>If true print debugging information.</td><td>No, default value is false.</td>
    </tr>
    <tr>
        <td>quiet</td><td>If true be extra quiet.</td><td>No, default value is false.</td>
    </tr>
</table>

<h3>Nested Elements</h3>
The task has no nested elements.
<h3>Supported Templates</h3>
<ul>
    <li>Default(no name) - Produces a simple ETL template for a quick start.</li>
    <li><a href="../../../scriptella/tools/template/DataMigrator.html">DataMigrator</a> - Produces an ETL template for
        transferring data between tables of different databases.</li>
</ul>
<h3>Examples</h3>
<strong>Produce default ETL template</strong>
<pre><code>&lt;etl-template/&gt;</code></pre>
<strong>Produce data migration template:</strong>
<pre><code>
    &lt;property file="etl.properties"/>
    &lt;!--
    Ant properties
        driver,class,user,password
    must be set before calling "DataMigrator" etl-template 
    -->
    &lt;etl-template name="DataMigrator"/>
</code></pre>

</body>